package org.algorithm.熊猫.回溯算法;

import org.algorithm.common.TreeNode;
import org.junit.Test;

import java.util.List;

/**
 * 编写一个程序，通过填充空格来解决数独问题。
 * 给定一个二叉树，找出其最大深度。
 * <p>
 * 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
 * <p>
 * 说明: 叶子节点是指没有子节点的节点。
 * <p>
 * 来源：力扣（LeetCode）
 * 链接：https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/
 */
public class $4月29日$二叉树的最大深度 {


    @Test
    public void test(){

    }

    public int maxDepth(TreeNode root) {
        return treeDepth(root, 0);
    }

    int treeDepth(TreeNode root, int i) {
        if (root == null) {
            return i;
        }
        i++;
        int left = treeDepth(root.left, i);
        int right = treeDepth(root.right, i);
        return Math.max(left, right);
    }
}
